package com.iscas.tech.service;

import com.iscas.tech.entity.AtBaseuser;
import com.iscas.tech.param.AtBaseuserPageParam;
import com.iscas.tech.vo.AtBaseuserQueryVo;
import io.geekidea.springbootplus.framework.common.service.BaseService;
import io.geekidea.springbootplus.framework.pagination.Paging;

import java.util.List;

/**
 * 前端用户注册表 服务类
 *
 * @author yangyi
 * @since 2020-10-26
 */
public interface AtBaseuserService extends BaseService<AtBaseuser> {

    /**
     * 保存
     *
     * @param atBaseuser
     * @return
     * @throws Exception
     */
    boolean saveAtBaseuser(AtBaseuser atBaseuser) throws Exception;

    /**
     * 修改
     *
     * @param atBaseuser
     * @return
     * @throws Exception
     */
    boolean updateAtBaseuser(AtBaseuser atBaseuser) throws Exception;

    /**
     * 删除
     *
     * @param id
     * @return
     * @throws Exception
     */
    boolean deleteAtBaseuser(Long id) throws Exception;


    /**
     * 获取分页对象
     *
     * @param atBaseuserPageParam
     * @return
     * @throws Exception
     */
    Paging<AtBaseuserQueryVo> getAtBaseuserPageList(AtBaseuserPageParam atBaseuserPageParam) throws Exception;

    /**
     * @param id 用户ID
     * @return 审核用户
     * @throws Exception 审核异常
     */
    Boolean checkUser(Long id) throws Exception;

    /**
     * @param keyword 关键字
     * @return 满足条件的所有用户信息
     */
    List<AtBaseuserQueryVo> searchUser(String keyword);
}
